package org.wiki.jdbc.service;

import java.util.List;

import org.wiki.jdbc.dao.IUserDAO;
import org.wiki.jdbc.domain.User;
import org.wiki.jdbc.factory.DAOFactory;

/**
 * 实现IUserService接口，主业务逻辑实现。
 * @author Wiki.M
 *
 */
public class UserServiceImpl implements IUserService {

	//利用数据访问工厂类获得用户数据访问对象具体实现类的实例。
	private IUserDAO userDAO = DAOFactory.getInstance().getUserDao();
	
	/**
	 * 添加用户
	 * @param user 用户对象实例
	 */
	public void addUser(User user) {
		userDAO.save(user);
	}
	
	/**
	 * 删除用户
	 * @param id 用户ID 
	 */
	public void deleteUser(int id) {
		userDAO.delete(id);
	}
	
	/**
	 * 查询用户
	 * @param name 用户名
	 */
	public List<User> queryUserByName(String name) {
		List<User> list = userDAO.queryByName(name);
		return list;
	}
	
	/**
	 * 更新用户
	 * @param user 用户对象实例
	 */
	public void updateUser(User user) {
		userDAO.update(user);
	}
}